cssparser: Add gtk_css_parser_consume_url()
authorBenjamin Otte <otte@redhat.com>
Tue, 9 Apr 2019 00:29:27 +0000 (02:29 +0200)
committerBenjamin Otte <otte@redhat.com>
Fri, 12 Apr 2019 17:34:28 +0000 (19:34 +0200)
Another slight renaming and semantics change.

gtk/gtkcssimagerecolor.c
gtk/gtkcssimageurl.c
gtk/gtkcssparser.c
gtk/gtkcssparserprivate.h
gtk/gtkcssprovider.c

index 3ac856f651e07e90fc68fda6a34e0890729cb119..2027b4ecc58167dd82ec8dea512b4f127c8a711d 100644 (file)
@@ -245,12 +245,9 @@ gtk_css_image_recolor_parse_arg (GtkCssParser *parser,
   switch (arg)
   {
     case 0:
-      self->file = _gtk_css_parser_read_url (parser);
+      self->file = gtk_css_parser_consume_url (parser);
       if (self->file == NULL)
-        {
-          _gtk_css_parser_error (parser, "Expected a url here");
-          return 0;
-        }
+        return 0;
       return 1;
 
     case 1:
index b4db3740a4710ec06ca5e15130ee3adae4cf15cc..e46dd0ac9b2af37a3e4c1ff9cbd391b2e3d6b884 100644 (file)
@@ -165,7 +165,7 @@ gtk_css_image_url_parse (GtkCssImage  *image,
 {
   GtkCssImageUrl *url = GTK_CSS_IMAGE_URL (image);
 
-  url->file = _gtk_css_parser_read_url (parser);
+  url->file = gtk_css_parser_consume_url (parser);
   if (url->file == NULL)
     return FALSE;
 
index fa613464a40939a9d240a9a49d019d6ac682a7a4..502f2ec7942d5e0bdf995648b788cde468f2163f 100644 (file)
@@ -1036,7 +1036,7 @@ _gtk_css_parser_try_hash_color (GtkCssParser *parser,
 }
 
 GFile *
-_gtk_css_parser_read_url (GtkCssParser *parser)
+gtk_css_parser_consume_url (GtkCssParser *parser)
 {
   gchar *path;
   GFile *file;
index 9dd518d53198ca0380bef67f53eaa30f48538e5e..fec25fceff39602de922a90814fdf87967d7cd21 100644 (file)
@@ -98,6 +98,7 @@ gboolean        _gtk_css_parser_try_hash_color    (GtkCssParser          *parser
 
 char *          gtk_css_parser_consume_ident      (GtkCssParser          *self);
 char *          gtk_css_parser_consume_string     (GtkCssParser          *self);
+GFile *         gtk_css_parser_consume_url        (GtkCssParser          *self);
 gboolean        gtk_css_parser_consume_number     (GtkCssParser          *self,
                                                    double                *number);
 gboolean        gtk_css_parser_consume_integer    (GtkCssParser          *parser,
@@ -113,7 +114,6 @@ gsize           gtk_css_parser_consume_any        (GtkCssParser          *parser
                                                    gpointer               user_data);
 
 gboolean        _gtk_css_parser_has_number        (GtkCssParser          *parser);
-GFile *         _gtk_css_parser_read_url          (GtkCssParser          *parser);
 
 void            _gtk_css_parser_skip_whitespace   (GtkCssParser          *parser);
 void            _gtk_css_parser_resync            (GtkCssParser          *parser,
index bb77fcdbaa7b5f9b8f73dea94d36b7d6b72d2029..1abcaa847209d6da0102850acc92fea3e8180034 100644 (file)
@@ -787,12 +787,17 @@ parse_import (GtkCssScanner *scanner)
       char *url;
 
       url = gtk_css_parser_consume_string (scanner->parser);
-      file = gtk_css_parser_resolve_url (scanner->parser, url);
-      g_free (url);
+      if (url)
+        {
+          file = gtk_css_parser_resolve_url (scanner->parser, url);
+          g_free (url);
+        }
+      else
+        file = NULL;
     }
   else
     {
-      file = _gtk_css_parser_read_url (scanner->parser);
+      file = gtk_css_parser_consume_url (scanner->parser);
     }
 
   if (file == NULL)